package org.m8.auth.model.qentity;

import com.querydsl.core.types.Path;
import com.querydsl.core.types.PathMetadata;
import com.querydsl.core.types.dsl.DateTimePath;
import com.querydsl.core.types.dsl.StringPath;
import com.querydsl.sql.ColumnMetadata;
import com.querydsl.sql.RelationalPathBase;

import javax.annotation.processing.Generated;
import java.sql.Types;

import static com.querydsl.core.types.PathMetadataFactory.forVariable;


/**
 * QM8SocialUserBind is a Querydsl query type for QM8SocialUserBind
 */
@Generated("com.querydsl.sql.codegen.MetaDataSerializer")
public class QSocialUserBind extends RelationalPathBase<QSocialUserBind> {

    private static final long serialVersionUID = -2095541229;

    public static final QSocialUserBind m8SocialUserBind = new QSocialUserBind("m8_social_user_bind");

    public final StringPath code = createString("code");

    public final DateTimePath<java.util.Date> createTime = createDateTime("createTime", java.util.Date.class);

    public final StringPath creator = createString("creator");

    public final StringPath id = createString("id");

    public final StringPath openid = createString("openid");

    public final StringPath socialType = createString("socialType");

    public final StringPath state = createString("state");

    public final StringPath updater = createString("updater");

    public final DateTimePath<java.util.Date> updateTime = createDateTime("updateTime", java.util.Date.class);

    public final StringPath userId = createString("userId");

    public final com.querydsl.sql.PrimaryKey<QSocialUserBind> primary = createPrimaryKey(id);

    public QSocialUserBind(String variable) {
        super(QSocialUserBind.class, forVariable(variable), "null", "m8_social_user_bind");
        addMetadata();
    }

    public QSocialUserBind(String variable, String schema, String table) {
        super(QSocialUserBind.class, forVariable(variable), schema, table);
        addMetadata();
    }

    public QSocialUserBind(String variable, String schema) {
        super(QSocialUserBind.class, forVariable(variable), schema, "m8_social_user_bind");
        addMetadata();
    }

    public QSocialUserBind(Path<? extends QSocialUserBind> path) {
        super(path.getType(), path.getMetadata(), "null", "m8_social_user_bind");
        addMetadata();
    }

    public QSocialUserBind(PathMetadata metadata) {
        super(QSocialUserBind.class, metadata, "null", "m8_social_user_bind");
        addMetadata();
    }

    public void addMetadata() {
        addMetadata(code, ColumnMetadata.named("code").withIndex(5).ofType(Types.VARCHAR).withSize(256).notNull());
        addMetadata(createTime, ColumnMetadata.named("create_time").withIndex(8).ofType(Types.TIMESTAMP).withSize(19).notNull());
        addMetadata(creator, ColumnMetadata.named("creator").withIndex(7).ofType(Types.VARCHAR).withSize(64));
        addMetadata(id, ColumnMetadata.named("id").withIndex(1).ofType(Types.VARCHAR).withSize(32).notNull());
        addMetadata(openid, ColumnMetadata.named("openid").withIndex(4).ofType(Types.VARCHAR).withSize(32).notNull());
        addMetadata(socialType, ColumnMetadata.named("social_type").withIndex(3).ofType(Types.VARCHAR).withSize(10).notNull());
        addMetadata(state, ColumnMetadata.named("state").withIndex(6).ofType(Types.VARCHAR).withSize(256));
        addMetadata(updater, ColumnMetadata.named("updater").withIndex(9).ofType(Types.VARCHAR).withSize(64));
        addMetadata(updateTime, ColumnMetadata.named("update_time").withIndex(10).ofType(Types.TIMESTAMP).withSize(19).notNull());
        addMetadata(userId, ColumnMetadata.named("user_id").withIndex(2).ofType(Types.VARCHAR).withSize(32).notNull());
    }

}

